连程序员都大喊好难的信息学奥赛,不是你想学就能学的!
经常有家长问我,顺着你们的课程一直学最后能去参加信息学奥赛吗?
看来,对信息学奥赛感兴趣的家长不少。大部分是因为信息奥赛对升学有帮助。也确实如此,在我们之前推送的高二妹子靠编程保送清华,信息奥赛金牌得主年龄越来越小!文章中,主角毛嘉怡就通过NOIP大赛保送到清华大学。
但这并不能表明所有孩子都适合学信息奥赛,毕竟能在这个比赛中获奖的孩子真的是“别人家的孩子”。
那什么是信息学奥赛?你家的孩子到底适不适合学习信息学奥赛?
信息学奥赛到底是什么?
信息学奥赛体系比较复杂,有NOI,NOIP,IOI甚至还有各种冬夏令营。学生参加的比较普遍的是NOIP。
NOIP全称全国青少年信息学奥林匹克联赛。它的含金量怎么样呢?是和全国中学生数学、物理、化学、生物并重的5个学科奥林匹克竞赛。
参加这个比赛,首先要学习一门编程语言,Pascal / C / C++。不过,按照最新的官方公告:从2020年开始,除了NOIP,其他NOI系列赛事将不再支持Pascal语言和C语言;从2022年开始,NOIP竞赛将不再支持Pascal语言。学Pascal除了比赛,在实际工作中应用的已经不多了。
也就是说从2022开始,比赛将仅支持C++语言。而C++有多难呢?我在写这篇文章的时候,旁边的程序员说,C++我都搞不定啊,可想而知有多难了。
信息奥赛由中国计算机学会组织举办,从1995年开始,每年举办一次。信息奥赛分初赛和复赛。初赛考察通用、实用的计算机科学知识,以笔试为主。参加初赛者必须达到一定分数线后才有资格参加复赛。复赛是程序设计,需在计算机上调试完成。
联赛分普及组和提高组两个组别。最小的小学四年级就可以报名参加普及组的大赛。而提高组只允许高中生报名,获得提高组全国决赛一等奖的选手甚至可以获得名牌大学的保送资格(当然这个很难的啦)。
信息奥赛,不是你想学就能学的
相比其他几门学科,信息学的基础学科性没有那么强,准入门槛又比较高,所以受众面一直不怎么广。
不过,这两年奥数被吐槽得太厉害。因此很多地方民办学校开始用信息奥赛来选拔优质生源了,真是忧伤。这么一来,很多家长都争相把孩子送去学信息奥赛。于是,教育机构推出各种各样的NOIP课程,比如Pascal 、 C 、 C++等。
有些家长冲着进民办、高考能加分去报名这些课程,有的看周围孩子在学什么,就想着自家孩子也不能落后,强行把孩子塞进各种奥赛班、兴趣班中。但信息奥赛的编程语言真是没那么好学的。
我们上一期就接收了好几位Pascal学了半年多,再转过来学Scratch的学员。一问,有好几个家长连Pascal是什么也不知道,只知道进民办得考这个。再问孩子学了这么久学到了什么?家长说孩子啥都没学到。
为什么会出现这样的问题?先来说说Pascal吧。Pascal是已经几乎被淘汰的编程语言了,因为编程语言的更新迭代很快。再者,所有的编程语言都是有复杂的语法规则,需要记忆很多枯燥的内容,连成年人学习起来都会十分费劲,何况是小学生呢?所以孩子学半年、一年学不出个所以然是非常正常的事情。
再者,学编程语言要独立做出一个项目来也是很难的,需要团队的配合协作。学了半年多都不知道学什么,也做不出个作品,孩子的学习兴趣和热情自然是很难保持下去的。
最后,信息学奥赛是一个个性化很强的竞赛类学习课程,目标性也很强,就是比赛拿奖。在学习的过程中,娱乐休闲的因素较少,竞赛比拼的压力非常大。
对于编程来说,其实是很考验天分的一件事,在我们之前的文章我们的电脑课还在教打字,英国娃已经学上计算思维了!中说道:编程要求孩子需要有很强的逻辑思维能力和计算思维能力。
所以我们建议,如果真的希望通过信息奥赛敲开民办小学的门,那最好在这之前先培养孩子对编程的兴趣,培养孩子的计算思维和逻辑思维能力,比如从更有趣的Scratch入手开始学习。
从Scratch入手学编程更Easy
其实编程并不难,比如以兴趣为导向的Scratch,孩子们只需要像搭积木一样就能学编程!一年级的孩子就能做出非常棒的游戏作品了。
一年级任建豪小朋友作品
Scratch是一种图形化的编程软件,简单来说就是把复杂的语法用积木块包装起来,孩子只要像搭积木一样就能写出一个程序,短短十几分钟就做出动画、游戏、音乐等好玩有趣的作品,孩子的自信心一下就被树立起来了。
操作简单直接,不需要大量的英文代码,关键是特别有趣!!!孩子做完之后能玩到自己创作的游戏,现在用网易卡搭的平台还能分享给亲朋好友,会非常有成就感。
我用scratch编写的切西瓜小游戏
通过Scratch学习,让孩子先学习编程的基础知识,培养孩子的计算思维和逻辑思维能力,再开始学习编程语言,这样能够让编程学习循序渐进,而不是一个步子迈太大,直接放弃编程学习。
相关阅读:
海码爸爸 ∣一群计算机博士发起的父联组织
长按识别二维码,加关注;欢迎加入QQ群:566342198(注明“编程”)